package com.leave.mos.service.impl;

import com.leave.mos.constant.TablenameConstant;
import com.leave.mos.entity.User;
import com.leave.mos.service.MongodbSaveService;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

@Service
public class MongodbSaveServiceImpl implements MongodbSaveService {


    @Resource
    private MongoTemplate mongoTemplate;


    /**
     * 使用默认的保存数据
     * @param user
     * @return
     *
     * @de 1.如果数据库中没有和这个类名相同的集合，会自动创建一个类名小写的默认集合。
     *     2.如果存在和这个类名小写相同的集合，会自动插入到这个集合中。
     *
     */
    @Override
    public User save(User user){
        mongoTemplate.save(user);
        return user;
    }


    /**
     * 保存到确定的集合中
     * @param user
     * @return
     * @de 1.会把数据保存到这个集合中；没调用一次会生成一条记录。
     *     2.id值是mongodb数据库自动生成的唯一值。
     */
    @Override
    public User saveTable(User user){
        mongoTemplate.save(user, TablenameConstant.Testabc.TableName);
        return user;
    }


}
